﻿using Sidvall.Collections;

namespace Sidvall.IdentityManager.UI.Entities.Model
{
    [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Maintainability", "CA1506:AvoidExcessiveClassCoupling")]
    public partial class EntityCache : Sidvall.UI.Entities.EntityCacheBase
    {
        #region Public Members

        [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1819:PropertiesShouldNotReturnArrays")]
        public AspNetRolesCollection AspNetRolesCache { get; set; }
        [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1819:PropertiesShouldNotReturnArrays")]
        public AspNetUserClaimsCollection AspNetUserClaimsCache { get; set; }
        [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1819:PropertiesShouldNotReturnArrays")]
        public AspNetUserLoginsCollection AspNetUserLoginsCache { get; set; }
        [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1819:PropertiesShouldNotReturnArrays")]
        public AspNetUsersCollection AspNetUsersCache { get; set; }
        
        #region Clear

        public void Clear()
        {
            this.AspNetRolesCache = null;
            this.AspNetUserClaimsCache = null;
            this.AspNetUserLoginsCache = null;
            this.AspNetUsersCache = null;
        }

        #endregion
        
        #endregion
        #region Constructors

        public EntityCache()
        {
        }

        #endregion
    }
}